#include <iostream>
#include <fstream>
#include <vector>
#include <chrono>
#include <map>
#include <ctime>
#include <ratio>
#include <conio.h>
#include <queue>
#include <stack>
#include <deque>
#include <iomanip>
#include <string>
#include <algorithm>
#include "Node.h"


#pragma once

using namespace std;
class Iterator 
{
private:
	Node* ptr_;
public:
	Iterator(Node* ptr) : ptr_(ptr) { }
	Iterator operator++() { Iterator i = *this; ptr_=ptr_->next; return i; }
	Node& operator*() { return *ptr_; }
	Node* operator->() { return ptr_; }
	bool operator==(const Iterator& rhs) { return ptr_ == rhs.ptr_; }
	bool operator!=(const Iterator& rhs) { return ptr_ != rhs.ptr_; }

	Iterator(void)
	{
	}

	~Iterator(void)
	{
	}
};

